Optimizing web site images using a focal point

ABSTRACT

A method may include providing an image to be adjusted, enabling selection of a focal point of the image, and adjusting the image based on the focal point of the image.

BACKGROUND

1. Field of the Invention

Implementations described herein relate generally to web site imagesand, more particularly, to optimizing web site images using a focalpoint.

2. Description of Related Art

Many web site builder (or creation) products offer web page templatesthat a user may manipulate to create web pages for a web site. Suchtemplates offer, for example, layout options, text input, image input,etc. Properly placing images within a web page template is typicallydifficult unless a professional web page designer adjusts (e.g., throughscaling, cropping, skewing, positioning, etc.) the image to fit withinthe visual elements of the web page. For example, often times an imagetemplate of a web page template is dimensionally smaller than the imagea user desires to display within the image template. For someone wishingto create a web site with no experience, this may become a significantbarrier to producing a high quality web site. In addition, a change inthe web page template typically requires that all of the images bereadjusted by the user.

Many image manipulation products (e.g., Adobe® Photoshop®) and web sitebuilder products (e.g., Adobe® DreamWeaver, Microsoft® Frontpage, etc.)provide tools for adjusting images so that the images will fit properlywithin a web page. Unfortunately, these products make the process ofadjusting the images a manual process. Depending upon the number ofimages to be placed within a web site, this manual process may take aninordinate amount of time, cause much frustration, and still result inan inferior web site being produced.

SUMMARY

According to one aspect, a method may include providing a digital imageto be adjusted, enabling selection of a focal point of the image, andadjusting the image based on the focal point of the image.

According to another aspect, a method may include providing an image tobe displayed within an image template of a web page, and enablingselection of a focal point of the image. The method may also includecomparing dimensions of the image with dimensions of the image template,and adjusting the image based on the comparison and the focal point ofthe image. The method may further include providing the adjusted imagewithin the image template of the web page.

According to yet another aspect, a computer-readable medium may storecomputer-executable code for adjusting an image. The code may includeinstructions for providing an image to be provided within predetermineddimensions, and instructions for enabling selection of a focal point ofthe image. The code may also include instructions for comparingdimensions of the image with the predetermined dimensions, andinstructions for adjusting the image based on the comparison and thefocal point of the image.

According to a further aspect, a computer-readable medium may storecomputer-executable code for adjusting an image. The code may includeinstructions for providing a thumbnail of an image to be provided withinpredetermined dimensions, and instructions for using the thumbnail toenable selection of a focal point of the image. The code may alsoinclude instructions for comparing dimensions of the image with thepredetermined dimensions, and instructions for adjusting the image basedon the comparison and the focal point of the image.

According to another aspect, a computer-readable medium may storecomputer-executable code for adjusting an image. The code may includeinstructions for providing a preview image of an image to be providedwithin predetermined dimensions, and instructions for using the previewimage to enable selection of a focal point of the image. The code mayalso include instructions for comparing dimensions of the image with thepredetermined dimensions, and instructions for adjusting the image basedon the comparison and the focal point of the image.

According to still another aspect, a method may include enablingselection of a focal point of an image to be displayed within a portionof a web page having predetermined dimensions. The method may alsoinclude comparing dimensions of the image with the predetermineddimensions of the portion of the web page, and using the comparison ofthe image dimensions with the predetermined dimensions to determinerules for adjusting the image. The method may further include adjustingthe image based on the rules and the focal point of the image, andproviding the adjusted image within the portion of the web page, theadjusted image including at least the focal point of the image.

According to another aspect, a system may include means for providing animage to be displayed within an image template, and means for enablingselection of a focal point of the image. The system may also includemeans for comparing dimensions of the image with dimensions of the imagetemplate, and means for adjusting the image based on the comparison andthe focal point of the image. The system may further include means forproviding the adjusted image within the image template.

According to yet another aspect, a device may include a memory to storeinstructions, and a processor to execute the instructions. The processormay execute the instructions to provide an image to be provided withinpredetermined dimensions, and enable selection of a focal point of theimage. The processor may also execute the instructions to comparedimensions of the image with the predetermined dimensions, and adjustthe image based on the comparison and the focal point of the image.

According to still yet another aspect, a method may include providing aplurality of images of a video or animation sequence, enabling selectionof focal points of at least the first and last images of the video oranimation sequence, and adjusting at least the first and last images ofthe video or animation sequence based on the selected focal points.

According to a further aspect, a method may include providing anelectronic media item, enabling selection of a focal point of theelectronic media item, and adjusting the electronic media item based onthe focal point of the electronic media item.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate an embodiment of the inventionand, together with the description, explain the invention. In thedrawings,

FIG. 1 is an exemplary diagram illustrating concepts consistent with theprinciples of the invention;

FIG. 2 is an exemplary diagram of a device in which systems and methodsconsistent with the principles of the invention may be implemented;

FIG. 3 is a diagram of a portion of an exemplary computer-readablemedium that may be used by the device of FIG. 2;

FIGS. 4A-4E are exemplary diagrams of exemplary implementations forinputting and/or optimizing web site images using a focal point;

FIGS. 5A-5E are exemplary diagrams of exemplary implementations foroptimizing web site images using a focal point;

FIGS. 6A and 6B are exemplary diagrams of exemplary implementations ofweb sites that may include images optimized using a focal point;

FIG. 7 is an exemplary flowchart of an exemplary implementation forinputting and/or optimizing web site images using a focal point; and

FIG. 8 is an exemplary flowchart of an exemplary implementation foroptimizing web site images using a focal point.

DETAILED DESCRIPTION

The following detailed description of the invention refers to theaccompanying drawings. The same reference numbers in different drawingsmay identify the same or similar elements. Also, the following detaileddescription does not limit the invention.

Overview

Implementations consistent with the principles of the invention mayrelate to techniques for optimizing an image for a web site using afocal point of the image. By using a single piece of information (e.g.,the focal point of the image to be inserted within a web page), highquality web pages, containing a user-supplied image(s), may be generatedwithout having to manually adjust the image(s). For example, a user maydecide to insert an image within an image template of a web page builderproduct. To accomplish this, the user may import the image and maychoose a focal point of the image. A “focal point” of an image may beany portion of the image that the user desires to be displayed withinthe web page, and/or any portion of the image that the user desires tobe a primary focus. For example, a focal point may include a face, alogo, certain words, a prominent image feature, and/or any image featurethe user desires to be included for display within the web page. Thefocal point of the image may be automatically set to be the center ofthe image, and/or the user may select the focal point of the image. Oncethe focal point is set, the image may be automatically adjusted to fitwithin the web page and/or may include at least that portion of theimage deemed to be the focal point.

The description to follow will describe an image optimization techniqueas it is used with a web site builder product. It should be understoodthat the description may equally apply to other image manipulationproducts. For example, the image optimization technique may used withany web site builder product (e.g., Adobe® DreamWeaver, Microsoft®Frontpage, Yahoo!® SiteBuilder, etc.) and/or any image manipulationproduct (Adobe® Photoshop®, Microsoft® Digital Image Suite, Corel®CorelDRAW Graphics Suite, MicroGraphix Picture Publisher, etc.).

FIG. 1 is an exemplary diagram illustrating concepts consistent with theprinciples of the invention. As shown in FIG. 1, a web site builderproduct may include a navigation section, a web page template, a sectionto preview a web page, and image adjustment tools. The navigationsection may include tools that may aid in the navigation of web pages ofthe web site being created. For example, the navigation section mayinclude a tree providing a list of web page templates that a user mayselect from in order to view the contents of a web page template.

The web page template may provide a template that may aid in the webpage creation process. For example, as shown in FIG. 1, the web pagetemplate may provide a template for a home page. The home page templatemay include a page title section for entering the title of the web page,and/or a main content section for entering information about the homepage (e.g., company description, services provided, etc.). The home pagetemplate may include a picture section for inserting an image within theweb page, and/or a section for inputting a company name, logo, slogan,copyright information, trademark information, etc.

The picture section may display the selected image and/or may display afocal point selector. The focal point selector may initially be providedin the center of the image and/or may be manipulated to select a focalpoint of the image. Once the focal point is selected, the image may beautomatically adjusted to fit within the web page and/or may include atleast that portion of the image deemed to be the focal point.

The web page preview section may include a window that may provide apreview of the web page. The preview of the web page may contain theinformation inputted into the web page template, including the selectedimage. The preview of the web page may display the selected image as anadjusted image, i.e., after the image has been automatically adjustedbased on the selected focal point. For example, as shown in FIG. 1, theselected image may have a height (a “y” dimension and/or a verticaldimension) and/or a width (an “x” dimension and/or a horizontaldimension) that is larger than the height and/or width of the section ofthe web page where the image may be displayed. The image may beautomatically adjusted to fit within the web page based on the selectedfocal point and/or may include at least that portion of the image deemedto be the focal point.

The image adjustment tools may include a variety of tools that may aidin the manipulation of an image. For example, the image adjustment toolsmay include tools to cut, copy, paste, clear, import, link, unlink,image map, rotate left, rotate right, crop, adjust, and/or revert theimage. These manual image adjustment tools may optionally be used inaddition to the automatic image adjustment.

Exemplary Device Architecture

FIG. 2 is an exemplary diagram of a device 200 that may be used withaspects of the invention. A device may be defined as a personalcomputer, a wireless telephone, a personal digital assistant (PDA), alap top, or another type of computation or communication device.

The device 200 may include a bus 210, a processor 220, a main memory230, a read only memory (ROM) 240, a storage device 250, an input device260, an output device 270, and a communication interface 280. Bus 210may include a path that permits communication among the elements ofdevice 200.

Processor 220 may include a processor, microprocessor, or processinglogic that may interpret and execute instructions. Main memory 230 mayinclude a random access memory (RAM) or another type of dynamic storagedevice that may store information and instructions for execution byprocessor 220. ROM 240 may include a ROM device or another type ofstatic storage device that may store static information and instructionsfor use by processor 220. Storage device 250 may include a magneticand/or optical recording medium and its corresponding drive.

Input device 260 may include a mechanism that permits an operator toinput information to device 200, such as a keyboard, a mouse, a pen,voice recognition and/or biometric mechanisms, etc. Output device 270may include a mechanism that outputs information to the operator,including a display, a printer, a speaker, etc. Communication interface280 may include any transceiver-like mechanism that enables device 200to communicate with other devices and/or systems. For example,communication interface 280 may include mechanisms for communicatingwith another device or system via a network.

The device 200, consistent with the principles of the invention, mayperform certain operations, as described in detail below. The device 200may perform these operations in response to processor 220 executingsoftware instructions contained in a computer-readable medium, such asmemory 230. A computer-readable medium may be defined as a physical orlogical memory device and/or carrier wave.

The software instructions may be read into memory 230 from anothercomputer-readable medium, such as data storage device 250, or fromanother device via communication interface 280. The softwareinstructions contained in memory 230 may cause processor 220 to performprocesses that will be described later. Alternatively, hardwiredcircuitry may be used in place of or in combination with softwareinstructions to implement processes consistent with the principles ofthe invention. Thus, implementations consistent with the principles ofthe invention are not limited to any specific combination of hardwarecircuitry and software.

Exemplary Computer-Readable Medium

FIG. 3 is a diagram of a portion of an exemplary computer-readablemedium 300 that may be used by a device, such as device 200. In oneimplementation, computer-readable medium 300 may correspond to memory230 of device 200. The portion of computer-readable medium 300illustrated in FIG. 3 may include an operating system 310, web sitebuilder software 320, and image adjustment software 330. Web sitebuilder software 320 and/or image adjustment software 330 may beincluded in operating system 310 or may be separate from operatingsystem 310. Image adjustment software 330 may be included in web sitebuilder software 320 or may be separate from web site builder software320.

Operating system 310 may include operating system software, such as theMicrosoft Windows®, Apple MAC OS®, Linux®, Unix®, IBM OS/2®, and/oroperating systems for personal digital assistants, cell phones, or othertypes of computation of communication devices.

Web site builder software 320 may include an executable object orprocess. Device 200 may obtain the executable object or process from aserver or from a third party, such as a third party server, disk, tape,network, CD-ROM, etc. Alternatively, the executable object or processmay be pre-installed on device 200.

Web site builder software 320 may permit creation of a web site and/orweb page(s) and may include any web site builder software, such asAdobe® DreamWeaver, Microsoft® Frontpage, Yahoo!® SiteBuilder, etc. Website builder software 320 may further include any image manipulationproduct, such as Adobe® Photoshop®, Microsoft® Digital Image Suite,Corel® CorelDraw Graphics Suite, MicroGraphix Picture Publisher, etc.

Web site builder software 320 may be automatically activated uponinitiation of operating system 310. Alternatively, web site buildersoftware 320 may be activated when instructed by a user. In either case,web site builder software 320 may permit creation of a web site and/orweb page(s), as will be described below.

Image adjustment software 330 may include an executable object orprocess. Device 200 may obtain the executable object or process from aserver or from a third party, such as a third party server, disk, tape,network, CD-ROM, etc. Alternatively, the executable object or processmay be pre-installed on device 200.

Image adjustment software 330 may permit automatic adjustment of a website image using a focal point of the image. Image adjustment software330 may operate in conjunction with web site builder software 320. Inanother implementation, image adjustment software 330 may be part of website builder software 320. In this latter implementation, web sitebuilder software 320 may perform the functions of image adjustmentsoftware 330. In yet another implementation, image adjustment software330 may be a process separate from operating system 310 and/or web sitebuilder software 320.

Image adjustment software 330 may be automatically activated uponinitiation of operating system 310 and/or web site builder software 320.Alternatively, image adjustment software 330 may be activated wheninstructed by a user. In either case, image adjustment software 330 maypermit automatic adjustment of a web site image using a focal point ofthe image, as will be described below.

Exemplary Image Importing and Focal Point Selection

There are a number of ways that a user could import an image and/orselect a focal point of the image so that the image may be automaticallyadjusted to fit within a web page. FIGS. 4A-4E are exemplary diagrams ofexemplary implementations for inputting and/or optimizing a web pageimage using a focal point. As shown in FIG. 4A, a web site builder 400(e.g., web site builder software 320) may include a navigation section405, a web page template 410, a web page preview section 420, and imageadjustment tools 425. Navigation section 405 may include tools that mayaid in the navigation of web pages of the web site being created. Forexample, navigation section 405 may include a tree providing a list ofweb page templates that a user may select from in order to view thecontents of a web page template.

Web page template 410 may provide a template of a web page to aid in theweb page creation process. For example, as shown in FIG. 4A, web pagetemplate 410 may provide a template for a home page. The home pagetemplate may include a page title section for entering the title of theweb page, and/or a main content section for entering information aboutthe home page (e.g., company description, services provided, etc.). Thehome page template may include a picture section 415 for inserting animage within the web page, and/or a section for inputting a companyname, logo, slogan, copyright information, trademark information, etc.Picture section 415 may display the selected image.

Web page preview section 420 may include a window that may provide apreview of the web page. The preview of the web page may contain theinformation inputted into web page template 410, including the selectedimage. Image adjustment tools 425 may include a variety of tools thatmay aid in the manipulation of a selected image. For example, the imageadjustment tools may include tools to cut, copy, paste, clear, import,link, unlink, image map, rotate left, rotate right, crop, adjust, and/orrevert the selected image. These manual image adjustment tools mayselectively be used in addition to the automatic image adjustment.

As shown in FIG. 4B, web site builder 400 may include an imageproperties window 430 that may enable a user to select an image to placewithin picture section 415 of web page template 410. Picture section 415may include a portion 435 for displaying the selected image. Imageproperties window 430 may be accessed a number of ways, such as byselecting portion 435 with a pointing device (e.g., a mouse). Imageproperties window 430 may include a section that enables a user toselect an image (i.e., “Image” section). The image may be selected fromimage files stored in device 200 (e.g., in main memory 230, ROM 240,and/or storage device 250), image files stored in a local network (e.g.,a local area network) connected to device 200, and/or image files found,for example, on a wide area network, such as the Internet.

Image properties window 430 may include an “Alt text” section that maypermit a user to enter text to be displayed when a pointing device, suchas a mouse, is provided over the image in the web page. Image propertieswindow 430 may include a “Mouseover image” section that may permit auser to select a mouseover image to be displayed when a pointing deviceis provided over the image in the web page.

A “Select the type of link” section may be provided in image propertieswindow 430. The “Select the type of link” section may permit a web pageimage to link to another page in the web site, another web site, anemail address, a file on device 200, etc. when the image is selectedwith a pointing device. Image properties window 430 may include a“Target window” section that may permit a user to determine where theselected image may be displayed. For example, a user may choose todisplay the selected image within an image template and/or within a newwindow on the web page.

If a user selects the “Browse” button of “Image” section of imageproperties window 430, then an image selection window 440 may bedisplayed, as shown in FIG. 4C. Image selection window 440 may permit auser to select an image file from image files stored in device 200,stored in a local network connected to device 200, and/or found on awide area network. Image selection window 440 may include a “Views”button 445 that may display image files in a number of alternativeviews. For example, the image files may appear in any of the alternativeviews provided by an operating system, e.g., image files may bedisplayed within Windows® “thumbnails,” “tiles,” “icons,” “list,” or“details” views. A “list” view 450 of image files is shown in FIG. 4Cfor exemplary purposes. A shown, two image files (“Image1” and “Image2”)may be displayed and selected by a user.

In one exemplary implementation consistent with the principles of theinvention, image selection window 440 may include a preview section 455that may enable an image 460 to be previewed prior to selection. Previewsection 455 may include a focal point selector 465 that may initially beprovided in the center of image 460 and/or may be manipulated to selecta focal point of image 460. Once the focal point is set, image 460 maybe automatically adjusted to fit within the web page and/or may includeat least that portion of image 460 deemed to be the focal point.

In another exemplary implementation consistent with the principles ofthe invention, image selection window 440, via “Views” button 445, maydisplay a “thumbnails” view 470 that may display an image file as athumbnail 475, as shown in FIG. 4D. A “thumbnail” may be a small picturethat may be used to represent a link to a larger picture, e.g., athumbnail may be a miniature version of the image in the image file.Focal point selector 465 may initially be provided in the center ofthumbnail 475 and/or may be manipulated to select a focal point ofthumbnail 475, and thus a focal point of the image. Once the focal pointis set, the image may be automatically adjusted to fit within the webpage and/or may include at least that portion of the image deemed to bethe focal point.

In yet another exemplary implementation consistent with the principlesof the invention, the image may be selected as set forth above, but afocal point may not be set for the image. As shown in FIG. 4E, image 460may be displayed within portion 435 of picture section 415 of web pagetemplate 410 (as shown in FIG. 4B). Focal point selector 465 mayinitially be provided in the center of image 460 and/or may bemanipulated to select a focal point of image 460. Once the focal pointis set, image 460 may be automatically adjusted to fit within the webpage and/or may include at least that portion of image 460 deemed to bethe focal point. The automatically adjusted image 480 may be displayedwithin web page preview section 420 as part of a web page preview. Thefull web page, with automatically adjusted image 480, may be displayedby selecting a “See Full Page” button 485.

Exemplary Focal Point-Based Image Adjustment

There are a number of ways that an image may be automatically adjustedfor a web page using a focal point of an image. FIGS. 5A-5E areexemplary diagrams of exemplary implementations for optimizing web pageimages using a focal point.

An image may be adjusted in a variety of ways. In one implementation,for example, the original imported image may be adjusted utilizing thetechniques discussed below in connection with FIGS. 5A-5E.

In another implementation, a copy of the imported image may be made, andthe copy of the image may be adjusted utilizing the techniques discussedbelow in connection with FIGS. 5A-5E. This may permit a user in thefuture to change a web page template and have a new image (e.g., basedon the original imported image) generated that may fit within theconstraints of the newly selected web page template. Another copy of theoriginal image may be made, and the new copy may be adjusted utilizingthe techniques discussed below in connection with FIGS. 5A-5E. A usermay do a complete web page makeover by selecting a new web pagetemplate, and all of the images associated with the web page (but basedon the original imported images) may be automatically adjusted to fitwithin the new web page template.

As shown in FIG. 5A, an image map 500 may be envisioned when a userattempts to place an image within a web page. Image map 500 may includean image 505 to be inserted within the web page, and a template 510(e.g., a web page image template) that may be sized to fit within theweb page and may be used to automatically adjust image 505 to fit withinthe web page. Focal point selector 465 may initially be provided in thecenter of image 505 and/or may be manipulated (e.g., using a pointingdevice, such as a mouse) to select a focal point of image 505. Once thefocal point is set, image 505 may be automatically adjusted to fitwithin template 510 so that at least that portion of image 505 deemed tobe the focal point may be provided within template 510.

Image 505 may include a width (X_(IMAGE)) and a height (Y_(IMAGE)).Template 510 may include a width (X_(TEMPLATE)) and a height(Y_(TEMPLATE)). As shown in FIG. 5A, for exemplary purposes, width(X_(IMAGE)) of image 505 may be larger than width (X_(TEMPLATE)) oftemplate 510, and height (Y_(IMAGE)) of image 505 may be smaller thanheight (Y_(TEMPLATE)) of template 510. In this exemplary case, image 505may be automatically adjusted to fit within template 510 by croppingwidth (X_(IMAGE)) of image 505 to fit within width (X_(TEMPLATE)) oftemplate 510, and scaling height (Y_(IMAGE)) of image 505 to fit withinheight (Y_(TEMPLATE)) of template 510. The cropping and scaling of image505 may be based on the selected focal point, as shown below withreference to FIGS. 5B-5E.

First Exemplary Image Adjustment

FIGS. 5B and 5C show a first exemplary implementation consistent withthe principles of the invention, where the image width (X_(IMAGE)) maybe larger than the template width (X_(TEMPLATE)) and the image height(Y_(IMAGE)) may be smaller than the template height (Y_(TEMPLATE)). Inone implementation, the processing of FIGS. 5B and 5C may be performedby one or more software and/or hardware components within device 200. Inanother implementation, the processing may be performed by one or moresoftware and/or hardware components within another device or a group ofdevices separate from or including device 200.

As shown in FIG. 5B, image 505 may include letters (“A” to “Z”)extending horizontally (i.e., in the “x” direction), and letters (“A” to“N”) extending vertically (i.e., in the “y” direction). Letters havebeen added to FIGS. 5B and 5C to aid in the understanding of how image505 may be automatically adjusted based on a focal point. Focal pointselector 465 may be manipulated to a portion of image 505, other thanthe center of image 505, to enable selection of a focal point of image505. Once the focal point is selected, image 505 may be automaticallyadjusted to fit within template 510 so that at least that portion ofimage 505 deemed to be the focal point may be provided within template510.

Since the width of image 505 of FIG. 5B may be larger than the width oftemplate 510, the width of image 505 may need to be cropped to fitwithin template 510. A cropped width (X_(CROP)) of image 505 may beprovided as shown in FIG. 5B. For example, cropped width (X_(CROP)) maybe equal to template width (X_(TEMPLATE)) and may be determined bybeginning at the focal point selected by selector 465 and extendingradially outward in the positive and negative “x” directions (i.e., inthe horizontal direction) until cropped width (X_(CROP)) eventuallyequals template width (X_(TEMPLATE)), as shown in FIG. 5C. If the focalpoint is not located at the center of image 505 (e.g., the focal pointof FIG. 5C), then one of the rays forming cropped width (X_(CROP)) mayeventually stop when it reaches the edge of image 505, and the other rayforming cropped width (X_(CROP)) may continue until cropped width(X_(CROP)) eventually equals template width (X_(TEMPLATE)). Since theheight of image 505 may be smaller than the height of template 510, theheight of image 505 may need to be scaled to fit within the height oftemplate 510. This may be accomplished by extending the bottom of image505 a distance (e.g., Y_(SCALE)), and by extending the top of image 505a distance (e.g., Y_(SCALE)) so that image 505 may have a height equalto height (Y_(TEMPLATE)) of template 510, as shown in FIG. 5C.

The resulting portion of image 505 that may be provided within the webpage may be shown as a shaded area 515 of image 505 in FIG. 5B. As shownin FIG. 5C, the resulting portion of image 505 (i.e., shaded area 515)may include a portion of the horizontally arranged letters 520 (i.e.,letters “A” to “5”), and all of the vertically arranged letters 525(i.e., letters “A” to “N”). The resulting portion of image 505 (shadedarea 515) may have a width (X_(CROP)) that may equal width(X_(TEMPLATE)) of template 510, and a height that may equal height(Y_(TEMPLATE)) of template 510.

Second Exemplary Image Adjustment

FIGS. 5D and 5E show a second exemplary implementation consistent withthe principles of the invention, where the image width (X_(IMAGE)) maybe smaller than the template width (X_(TEMPLATE)) and the image height(Y_(IMAGE)) may be larger than the template height (Y_(TEMPLATE)). Inone implementation, the processing of FIGS. 5D and 5E may be performedby one or more software and/or hardware components within device 200. Inanother implementation, the processing may be performed by one or moresoftware and/or hardware components within another device or a group ofdevices separate from or including device 200.

As shown in FIG. 5D, image 505 may include letters (“A” to “S”)extending horizontally (i.e., in the “x” direction), and letters (“A” to“S”) extending vertically (i.e., in the “y” direction). Letters havebeen added to FIGS. 5D and 5E to aid in the understanding of how image505 may be automatically adjusted based on a focal point. Focal pointselector 465 may be manipulated to a portion of image 505, other thanthe center of image 505, to enable selection of a focal point of image505. Once the focal point is selected, image 505 may be automaticallyadjusted to fit within template 510 so that at least that portion ofimage 505 deemed to be the focal point may be provided within template510.

Since the height of image 505 of FIG. 5B may be larger than the heightof template 510, the height of image 505 may need to be cropped to fitwithin template 510. A cropped height (Y_(CROP)) of image 505 may beprovided as shown in FIG. 5D. For example, cropped height (Y_(CROP)) maybe equal to template height (Y_(TEMPLATE)) and may be determined bybeginning at the focal point selected by selector 465 and extendingradially outward in the positive and negative “y” direction (i.e., inthe vertical direction) until cropped height (Y_(CROP)) eventuallyequals template height (Y_(TEMPLATE)), as shown in FIG. 5E. Since thewidth of image 505 may be smaller than the width of template 510, thewidth of image 505 may need to be scaled to fit within the width oftemplate 510. This may be accomplished by extending the right side ofimage 505 a distance (e.g., X_(SCALE)), and by extending the left sideof image 505 a distance (e.g., X_(SCALE)) so that image 505 may have awidth equal to width (X_(TEMPLATE)) of template 510, as shown in FIG.5E.

The resulting portion of image 505 that may be provided within the webpage may be shown as a shaded area 530 of image 505 in FIG. 5D. As shownin FIG. 5E, the resulting portion of image 505 (i.e., shaded area 530)may include all of the horizontally arranged letters 535 (i.e., letters“A” to “S”), and a portion of the vertically arranged letters 540 (i.e.,letters “A” to “F”). The resulting portion of image 505 (shaded area530) may have a width that equals width (X_(TEMPLATE)) of template 510,and a height (Y_(CROP)) that equals height (Y_(TEMPLATE)) of template510.

Although FIGS. 5B-5E show adjusting the dimensions of image 505 to equalthe dimensions of template 510, the dimensions (e.g., the width orheight) of image 505 may be adjusted to be less than the dimensions oftemplate 510. For example, if image 505 has a height equal to the heightof template 510, but the width of image 505 is much smaller than thewidth of template 510, then scaling the width of image 505 may create anundesirably skewed image. In such a case, the height of image 505 mayalso be adjusted so that the image displayed within the web page may beless skewed and more proportional.

Although FIGS. 5B-5E show cropping one dimension and scaling the otherdimension of image 505, any combination of cropping and scaling may beutilized. For example, image 505 may be scaled in the “x” and “y”directions, followed by a cropping in the “x” direction and/or the “y”direction of image 505. Scaling image 505 in both directions and thencropping may maintain the fidelity of image 505.

In an alternative implementation consistent with the principles of theinvention, instead of using focal point selector 465 to select the focalpoint, a user may identify features in an image that may be significantand are desired to be displayed within the generated web page. Forexample, a user may select, with a pointing device (e.g., a mouse),various significant points within the image and/or identify asignificant region within the image using an area selection tool (e.g.,a mouse). In another example, a prominent feature in an image may beautomatically identified and/or the focal point may default to thelocation of the prominent feature. A user may validate the automaticallyselected focal point and/or select another focal point of the image.

Although the exemplary implementations show a single still image beingmanipulated, the image manipulation techniques described herein may beapplied to more than one still image, and/or a video/animation sequencethat may include a series of frames (e.g., still images). In avideo/animation sequence, focal points may be identified on the startand end frames of the sequence. Additional focal points may beidentified at random intervals throughout the video/animation sequence,and/or an algorithm may be used to interpolate focal points in theintermediate frames of the sequence.

Although FIGS. 5A-5E show the focal point as a single point (e.g., an x,y coordinate) in an image, the focal may assume a variety of shapesother than a single point. For example, the focal point may be linear,circular, square, rectangular, and/or any other shape, such that thefocal point defines an area or a portion of an image. In oneimplementation, if a shape is used as a focal point in a video/animationsequence, the shape of the focal point may or may not be constantthroughout the video/animation sequence. In another implementation, if ashape is used as a focal point, additional information may be storedabout the relative importance of the image areas(s) within and/orbisected by the shaped focal point. For example, the focal point may bea line, where the beginning point of the line may indicate the mostimportant portion of the image, and the terminal (end) point of the linemay be an image portion of lesser importance (although of greaterimportance than image portions not bisected by the line).

In an implementation consistent with the principles of the invention,more than one focal point may be identified in a single image. Forexample, a series of focal points on a single image may be used tocreate a video/animation sequence.

Focal point information may be stored in a variety of locations. Forexample, in one implementation, focal point information may be stored asvector and/or meta data within layers and/or comment areas of itscorresponding image file. In another implementation, focal pointinformation may be stored separately from its corresponding image file.

In an implementation consistent with the principles of the invention, athree-dimensional focal point may be used to create a new camera anglefor an image, video, and/or animation. For example, a z-axis of thefocal point may indicate a relative level of zoon and/or a viewingangle. Multiple shapes may be used for a three-dimensional focal pointto apply visual effects. For example, a fisheye lens shape may be usedand may allow the focal point to be distorted.

In an implementation consistent with the principles of the invention, afocal point may be applied to a series of ordered data (e.g., a sitemap), and may indicate which portion(s) of the data is/are mostimportant to the users on a site. If the focal point ismulti-dimensional (e.g., a shape), then the relative importance of theareas contained within the shaped focal point may be identified. Such anarrangement may provide a mechanism for ensuring that indexing andadvertisement placements may be optimal. The areas contained within ashaped focal point may receive special treatment in site navigation,and/or search results may rank documents (e.g., web pages) according totheir user-defined (e.g., based on the focal point) importance.

Exemplary Web Page Displays of Automatically Adjusted Images

FIGS. 6A and 6B are exemplary diagrams of exemplary implementations ofweb pages that may include images optimized using a focal point. Forexemplary purposes, image 460 and the focal point selected by focalpoint selector 465 of FIG. 4E may be used to generate the image on theexemplary web pages of FIGS. 6A and 6B. As shown in FIG. 4E, the focalpoint of image 460 may be the nose of the person located to the right inimage 460. The image generated on the web page may depend upon thelayout of the web page.

As shown in FIG. 6A, a first exemplary web site 600 may include a webpage 610. Web page 610 may include a web page image 620 that may havebeen automatically adjusted using a focal point. Web site 600 may bedisplayed within web site builder 400 by selecting a “See Full Page”button 485, as shown in FIG. 4E. The display of web page 610 may bemodified by selecting from an options menu 630. Options menu 630 mayinclude a template option (e.g., “Master—Professional”), a colorsoption, a fonts option, an artwork option, and a layouts option. Thetemplate option may include a variety of web site templates from which auser may choose. For example, a type or style of template, such as a“Professional Hard” template 640, as shown in FIG. 6A, may be selectedand web page 610 may be displayed in accordance with “Professional Hard”template 640. The colors, fonts, artwork, and layouts of web page 610may be modified by selecting the colors option, fonts option, artworkoption, and/or layouts option, respectively.

As further shown in FIG. 6A, web page image 620 may have a height thatmay be smaller than the height of selected (i.e., imported) image 460.Web page image 620 may have a width that may be larger than the width ofimported image 460. Imported image 460 may be automatically adjusted tofit within web page 610. For example, the width of image 460 may bescaled and/or the height of image 460 may be cropped to fit within webpage 610. Web page image 620 may include at least the focal pointselected in image 460. For example, the nose of the person located tothe right in image 460 may be displayed in web page image 620.

As shown in FIG. 6B, a second exemplary web site 650 may include a webpage 660. Web page 660 may include a web page image 670 that may havebeen automatically adjusted using a focal point. Web site 650 may bedisplayed within web site builder 400 by selecting a “See Full Page”button 485, as shown in FIG. 4E. The display of web page 660 may bemodified by selecting from an options menu 630, as discussed above forFIG. 6A. For example, a “Classic Wild” template 680, as shown in FIG.6B, may be selected and web page 660 may be displayed in accordance with“Classic Wild” template 680.

As further shown in FIG. 6B, web page image 670 may have a height thatmay be larger than the height of imported image 460. Web page image 670may have a width that may be smaller than the width of imported image460. Imported image 460 may be automatically adjusted to fit within webpage 660. For example, the width of image 460 may be cropped and/or theheight of image 460 may be scaled to fit within web page 660. Web pageimage 670 may include at least the focal point selected in image 460.For example, the nose of the person located to the right in image 460may be displayed in web page image 670.

Exemplary Processing

FIG. 7 is an exemplary flowchart of an exemplary implementation forinputting and/or optimizing web site images using a focal point. FIG. 8is an exemplary flowchart of an exemplary implementation for optimizingweb site images using a focal point. In one implementation, theprocessing of FIGS. 7 and 8 may be performed by one or more softwareand/or hardware components within device 200. In another implementation,the processing may be performed by one or more software and/or hardwarecomponents within another device or a group of devices separate from orincluding device 200.

The processing of FIG. 7 may begin when a user is prompted to import animage that may be used as an image in a web site (block 710). Forexample, a user may select an image template in web site builder 400 andmay be prompted to import an image for placement in a web page. In oneimplementation, a user may invoke image properties window 430, which mayenable a user to select an image to place in picture section 415 of webpage template 410 (as shown in FIG. 4B). In another implementation, auser may invoke image selection window 440, which may enable a user toselect an image file (as shown in FIG. 4C).

The processing of FIG. 7 may default the focal point of the image to thecenter of the image and/or to a prominent feature of the image (block720). For example, focal point selector 465 may default to the center ofimage 505, as shown in FIG. 5A. In one implementation, focal pointselector 465 may provide its default location in a preview image 460 ofpreview section 455, as shown in FIG. 4C. In another implementation,focal point selector 465 may provide its default location in thumbnail475 of the image, as shown in FIG. 4D. In still another implementation,focal point selector 465 may provide its default location in image 460displayed within picture section 415 (FIG. 4B) of web page template 410,as shown in FIG. 4E.

In one implementation, the focal point of the image may be automaticallyselected using an image algorithm. For example, an image algorithm maybe used to locate a face and/or primary objects within an image, and thefocal point may be identified at these algorithm generated locations. Inanother implementation, object recognition may be applied to an imageand may automatically specify a particular object as a default focalpoint or region. In other words, object recognition may determine whatthe focal point should be based on the content (e.g., the image). Forexample, object recognition may be used to determine the focal point onthe center of a face (e.g., the nose), other objects (e.g., cars, trees,etc.), etc.

An image algorithm may be used with any type of image. For example, animage algorithm may be used with any type of digital image (e.g., binary(bilevel), grayscale, color, false-color, multi-spectral, thematic,etc.) provided in any type of format (e.g., a bitmap (BMP), a GraphicsInterchange Format (GIF), Joint Photographic Experts Group (JPEG),Portable Network Graphics (PNG), Scalable Vector Graphics (SVG), onedefined by vector objects, etc.).

A user may decide to adjust the focal point of the image (block730—YES), and the focal point may be accordingly adjusted by the user(block 740). For example, in one implementation, a user may manipulatefocal point selector 465, with a pointing device (e.g., a mouse), toselect the focal point of the image in any of the images displayed inFIGS. 4C-4E. In another implementation, a user may select, with apointing device, various points in the image and/or identify a region inthe image using an area selection tool (e.g., a mouse).

A user may decide to accept the default focal point (block 730—NO). Forexample, a user may validate the automatically selected focal point. Theprocessing of FIG. 7 may compare the dimensions of the imported imagewith the dimensions of the desired location of the image within the webpage (block 750). For example, image width (X_(IMAGE)), image height(Y_(IMAGE)), template width (X_(TEMPLATE)), and template height(Y_(TEMPLATE)), as shown in FIG. 5A, may be used for such a comparison.

In one implementation, image width (X_(IMAGE)), image height(Y_(IMAGE)), template width (X_(TEMPLATE)), and template height(Y_(TEMPLATE)) (blocks 810 of FIG. 8) may be used to calculate an inputimage size (X, Y). For example, as shown in FIG. 8 (block 820), inputimage width (X) may be calculated from the following equation and may berepresented as a percentage (%):

X=X _(IMAGE) /X _(TEMPLATE)(%).

Input image height (Y) may be calculated from the following equation andmay be represented as a percentage:

Y=Y _(IMAGE) /X _(IMAGE)(%).

As further shown in FIG. 8 (block 830), an aspect ratio(X_(TEMPLATE)/Y_(TEMPLATE)) may be calculated by dividing template width(X_(TEMPLATE)) by template height (Y_(TEMPLATE)). For example, aspectratio may have a variety of values, such as 1:1, 1:½,1:2, 1: n, and/orn:1, where an “n” value may be undefined (e.g., 1:n may meanX_(TEMPLATE) is specified, but Y_(TEMPLATE) is not specified).

The processing of FIG. 7 may use the comparison of the dimensions of theimported image with the dimensions of the desired location of the imagewithin the web page to look up rules for adjusting the image (block760). For example, in one implementation an image sizing truth table, asshown in Table 1 and described below, may be used for adjusting theimage. In another implementation, a variety of algorithms may be usedfor fitting the image within the web page, such as an algorithm todetermine the best fit of the image within the web page.

The processing of FIG. 7 may adjust the image to fit within the web pageusing the rules and the focal point of the image. For example, in oneimplementation, the width and/or the height of the image may be cropped.The cropped dimension(s) may be determined by radially extending thecropped dimension(s) from the focal point, as discussed above for FIGS.5B-5E.

The processing of FIG. 7 may place the adjusted image within the webpage. For example, the image may be optimized for placement within theweb page, e.g., the image may be automatically adjusted based on therules and the selected focal point.

Turning again to FIG. 8, the processing involved in blocks 810-830 hasbeen previously described. The processing of FIG. 8 may determine howthe image may be automatically adjusted (i.e., may determine theoutcome), based on input image width (X), input image height (Y), andaspect ratio (X_(TEMPLATE)/Y_(TEMPLATE)) (block 840). The outcome may bedetermined in a variety of ways. In one implementation, for example, theoutcome may be determined by using an image sizing truth table. Theimage sizing truth table (Table 1) may take the following form.

TABLE 1 Image Sizing Truth Table Input Image Size Aspect Ratios X Y 1:11:½ 1:2 1:n n:1 100% 100% DN CY SYCX DN DN 100% 75% SYCX CY SYCX DN SY100% 50% SYCX DN SYCX DN SY 100% 25% SYCX SYCX SYCX DN SY 100% 125% CYCY SYCX DN SY 100% 150% CY CY SYCX DN SY 100% 175% CY CY SYCX DN SY 75%100% SXCY SXCY SYCX SX DN 75% 75% SXY SXCY SYCX SX SY 75% 50% SYCX SXCYSYCX SX SY 75% 25% SYCX SYCX SYCX SX SY 75% 125% SXCY SXCY SYCX SX SY75% 150% SXCY SXCY SXY SX SY 75% 175% SXCY SXCY SXCY SX SY 50% 100% SXCYSXCY SXY SX DN 50% 75% SXCY SXCY SYCX SX SY 50% 50% SXY SXCY SYCX SX SY50% 25% SYCX SXY SYCX SX SY 50% 125% SXCY SXCY SXCY SX SY 50% 150% SXCYSXCY SXCY SX SY 50% 175% SXCY SXCY SXCY SX SY 25% 100% SXCY SXCY SXCY SXDN 25% 75% SXCY SXCY SXCY SX SY 25% 50% SXCY SXCY SXY SX SY 25% 25% SXYSXCY SYCX SX SY 25% 125% SXCY SXCY SXCY SX SY 25% 150% SXCY SXCY SXCY SXSY 25% 175% SXCY SXCY SXCY SX SY 125% 100% CX SXCY SYCX SX DN 125% 75%SYCX SXCY SYCX SX SY 125% 50% SYCX CX SYCX SX SY 125% 25% SYCX SYCX SYCXSX SY 125% 125% SXY SXCY SYCX SX SY 125% 150% SXCY SXCY SYCX SX SY 125%175% SXCY SXCY SYCX SX SY 150% 100% CX SXCY SYCX SX DN 150% 75% SYCX SXYSYCX SX SY 150% 50% SYCX CX SYCX SX SY 150% 25% SYCX SYCX SYCX SX SY150% 125% SYCX SXCY SYCX SX SY 150% 150% SXY SXCY SYCX SX SY 150% 175%SXCY SXCY SYCX SX SY 175% 100% CX SXCY SYCX SX DN 175% 75% SYCX SYCXSYCX SX SY 175% 50% SYCX CX SYCX SX SY 175% 25% SYCX SYCX SYCX SX SY175% 125% SYCX SXCY SYCX SX SY 175% 150% SYCX SXCY SYCX SX SY 175% 175%SXY SXCY SYCX SX SY

A variety of outcomes (blocks 850) may be provided by the image sizingtruth table. For example, in a first implementation (i.e., “do nothing”(DN)), the dimensions of the image may not be adjusted. In a secondimplementation (CX), image width (X_(IMAGE)) may be cropped based on theselected focal point. In a third implementation (CY), image height(Y_(IMAGE)) may be cropped based on the selected focal point. In afourth implementation (SXCY), image width (X_(IMAGE)) may be scaled tofit within the width of the web page (e.g., the image template) andimage height (Y_(IMAGE)) may be cropped based on the selected focalpoint.

In a fifth implementation (SYCX), image height (Y_(IMAGE)) may be scaledto fit within the height of the web page and image width (X_(IMAGE)) maybe cropped based on the selected focal point. In a sixth implementation(SXY), both image width (X_(IMAGE)) and image height (Y_(IMAGE)) may bescaled to fit within the width and the height of the web page. In aseventh implementation (SX), image width (X_(IMAGE)) may be scaled tofit within the width of the web page. In an eighth implementation (SY),image height (Y_(IMAGE)) may be scaled to fit within the height of theweb page.

In one implementation consistent with the principles of the invention, amaximum image upscaling threshold may be set. For example, a maximumimage upscaling threshold may be set to a percentage value (e.g., 133%,150%, etc.). This may help prevent skewing of an image that has adimension much smaller than the comparable dimension in the imagetemplate.

In another implementation, an image enhancement algorithm may be used onlow resolution images that are scaled up. If such an algorithm is used,then the maximum image upscaling threshold may be relaxed (e.g., notused and/or set to a higher percentage value).

In still another implementation, images may be scaled proportionally.For example, if an image is scaled to fit its height, then the imagewidth may be scaled the same amount. In still another implementation, a“do not crop” option may be provided. For example, such an option may beimplemented by replacing the CX entries (crop image width (X_(IMAGE)))and the CY entries (crop image height (Y_(IMAGE))) in the image truthtable with a SXY entry (scale image width (X_(IMAGE)) and image height(Y_(IMAGE))).

Although an exemplary truth table has been described, a truth table maybe just one way in which a decision about whether to crop and/or scalean image might be made. There may be a variety of ways in which adetermination of which dimension may be scaled, which dimensions may becropped, and/or what limits may be placed on such scaling and cropping.For example, an algorithm may be used to determine scaling, cropping,and/or limits to place on scaling and cropping.

Although the focal point has been used to adjust the dimensions of animage, as described above, the focal point may also be used with otherimage transformations. Exemplary image transformations may includeblurring, shaping, grayscale, color adjusting, noise removal, beveling,background drop (e.g., make background transparent), etc. For example,an image transformation algorithm may be used to alter (e.g., blur) aportion of an image at some distance from the focal point. In oneimplementation, a background color and neighboring objects may beexamined to determine which transformation to apply. For example, if theimage is being placed in an area having a blue background color, then acolorization may be applied to the edge of the image so that the imagemay blend in with the background for a smoother transition. Thisinformation may also be used to determine what the best sizing of theimage may be for a specific placement of the image. For example, if theimage has a blue vertical region at the vertical location to be cropped,then it may be determined that the image may be better sized if the bluevertical region remained in the cropped image.

CONCLUSION

Systems and methods consistent with the principles of the invention mayenable images to be automatically adjusted for placement within a webpage based on the selected focal point of the image. Such an arrangementmay eliminate the time consuming and frustrating task of manuallyadjusting (e.g., cropping, scaling) the image to fit within a web page.

The foregoing description of preferred embodiments of the presentinvention provides illustration and description, but is not intended tobe exhaustive or to limit the invention to the precise form disclosed.Modifications and variations are possible in light of the aboveteachings or may be acquired from practice of the invention.

For example, while series of acts have been described with regard toFIGS. 7 and 8, the order of the acts may be modified in otherimplementations consistent with the principles of the invention.Further, non-dependent acts may be performed in parallel.

Also, exemplary user interfaces have been described with respect toFIGS. 1, 4A-4E, 6A and 6B. In other implementations consistent with theprinciples of the invention, the user interfaces may include more,fewer, or different pieces of information.

Furthermore, the concept of a focal point may be applied to other formsof electronic media items, such as, e.g., audio streams and electronictext. For example, a focal point may be applied to an audio stream andmay be used to filter the audio stream to the most important information(e.g., a particular voice, a portion of a speech, etc.). A focal pointor focal “instance” (e.g., a particular paragraph, a chapter, a sectionof a document, etc.) may be applied to a variety of electronic text(e.g., email, a web page, an online book, a paragraph, etc.) tohighlight the focal instance in the electronic text.

It will be apparent to one of ordinary skill in the art that aspects ofthe invention, as described above, may be implemented in many differentforms of software, firmware, and hardware in the implementationsillustrated in the figures. The actual software code or specializedcontrol hardware used to implement aspects consistent with theprinciples of the invention is not limiting of the invention. Thus, theoperation and behavior of the aspects were described without referenceto the specific software code—it being understood that one of ordinaryskill in the art would be able to design software and control hardwareto implement the aspects based on the description herein.

No element, act, or instruction used in the present application shouldbe construed as critical or essential to the invention unless explicitlydescribed as such. Also, as used herein, the article “a” is intended toinclude one or more items. Where only one item is intended, the term“one” or similar language is used. Further, the phrase “based on” isintended to mean “based, at least in part, on” unless explicitly statedotherwise.

1-27. (canceled)
 28. A method comprising: receiving, by one or moreprocessors associated with one or more computing devices, dataassociated with a digital image; detecting, by the one or moreprocessors, a user input relating to a selection of a focal point of thedigital image; adjusting, by the one or more processors, the digitalimage based on the selection to create an adjusted digital image thatincludes the focal point, the digital image being automatically adjustedto fit within a web document without user input other than the userinput relating to the selection; and providing, by the one or moreprocessors, the adjusted digital image within the web document.
 29. Themethod of claim 28, where first dimensions of the adjusted digital imagecorrespond to second dimensions of a location in the web document wherethe digital image is to be displayed.
 30. The method of claim 29, whereadjusting the digital image includes: comparing the first dimensions ofthe digital image and the second dimensions of the location; andadjusting the digital image based on: comparing the first dimensions andthe second dimensions, and the focal point.
 31. The method of claim 29,where adjusting the digital image includes at least one of: centeringthe focal point in the adjusted digital image, maintaining the firstdimensions, cropping a width of the digital image based on the seconddimensions, cropping a height of the digital image based on the seconddimensions, scaling the width of the digital image based on the seconddimensions, or scaling the height of the digital image based on thesecond dimensions.
 32. The method of claim 28, where the focal pointcorresponds to an area of the digital image.
 33. The method of claim 28,where the focal point is associated with at least one of: a prominentfeature of the digital image, or a center of the digital image.
 34. Themethod of claim 28, further comprising: providing, before receiving theuser input relating to the selection, a preview version of the digitalimage within the web document, the preview version of the digital imageincluding a center region of the digital image.
 35. A system comprising:a memory to store data associated with a digital image; and one or moreprocessors to: detect a user input relating to a selection of a focalpoint of the digital image, adjust the digital image based on theselection to create an adjusted digital image that includes the focalpoint, the digital image being automatically adjusted to fit within aweb document without user input other than the user input relating tothe selection; and store the adjusted digital image in the memory. 36.The system of claim 35, where first dimensions of the adjusted digitalimage correspond to second dimensions of a location in the web documentwhere the digital image is to be displayed.
 37. The system of claim 36,where the one or more processors, when adjusting the digital image, arefurther to: compare the first dimensions and the second dimensions toproduce comparison results, the digital image being adjusted based onthe comparison results.
 38. The system of claim 36, where adjusting thedigital image includes at least one of: centering the focal point in theadjusted digital image, maintaining the first dimensions, cropping awidth of the digital image based on the second dimensions, cropping aheight of the digital image based on the second dimensions, scaling thewidth of the digital image based on the second dimensions, or scalingthe height of the digital image based on the second dimensions.
 39. Thesystem of claim 35, where the focal point corresponds to a point withinthe digital image.
 40. The system of claim 35, where the focal point isassociated with at least one of: a prominent feature of the digitalimage, or a center of the digital image.
 41. The system of claim 35,where the one or more processors are further to: provide, beforereceiving the user input relating to the selection, a preview version ofthe digital image within the web document, the preview version of thedigital image including a center region of the digital image.
 42. Amemory device to store instructions, the instructions comprising: one ormore instructions that, when executed by a processor associated with acomputing device, cause the processor to: detect a user input relatingto a selection of a focal point of a digital image, adjust the digitalimage based on the selection to create an adjusted digital image thatincludes the focal point, the digital image being automatically adjustedto fit within a web document without user input other than the userinput relating to the selection; and provide the adjusted digital imagewithin the web document.
 43. The memory device of claim 42, where firstdimensions of the adjusted digital image correspond to second dimensionsof a location in the web document where the digital image is to bedisplayed.
 44. The memory device of claim 43, where the one or moreinstructions to adjust the digital image further include: one or moreinstructions to compare the first dimensions and the second dimensionsto produce comparison results, the digital image being adjusted based onthe comparison results.
 45. The memory device of claim 43, where the oneor more instructions adjusting the digital image include: one or moreinstructions to perform at least one of: centering the focal point inthe adjusted digital image, maintaining the first dimensions, cropping awidth of the digital image based on the second dimensions, cropping aheight of the digital image based on the second dimensions, scaling thewidth of the digital image based on the second dimensions, or scalingthe height of the digital image based on the second dimensions.
 46. Thememory device of claim 42, where the focal point is associated with atleast one of: a prominent feature of the digital image, or a center ofthe digital image.
 47. The memory device of claim 42, where theinstructions further include: one or more instructions to provide,before receiving the user input relating to the selection, a previewversion of the digital image within the web document, the previewversion of the digital image including a center region of the digitalimage.